home *** CD-ROM | disk | FTP | other *** search
/ Joystick Magazine 1996 May / cd joy 71No13.iso / pc / demos / eurosoc / source / euro_def.h < prev    next >
C/C++ Source or Header  |  1996-03-19  |  15KB  |  665 lines

  1.  
  2.  
  3. #define        NULL                        0
  4. #define        LF                         10
  5. #define        MAX_STRING_LENGTH        50
  6. #define        REDRAW                    0
  7. #define        LEGALDRAW                 1
  8. #define        NOT_FOUND                -1
  9. #define        No                            0
  10. #define        Yes                        1
  11. #define        Off                        0
  12. #define        On                            1
  13. #define        JUSTIFY_FROM_POINT    0
  14. #define        CENTRE_ON_POINT        1
  15.  
  16. #define        FADE_COUNTER            25
  17.  
  18. #define        BLANK_SCREEN            0
  19. #define        PALETTE_FADEUP            1
  20. #define        RUN_FRONTEND            2
  21. #define        PALETTE_FADEDOWN        3
  22.  
  23. #define        na                              -1        // neither upper-case or lower-case character.
  24. #define        lw                            0        // lower-case character.
  25. #define        up                            1        // upper-case character.
  26.  
  27. //#define        EURO_friendly            0
  28. //#define        EURO_championship        1
  29. //#define        EURO_network_game        2
  30. //#define        EURO_serial_game        3
  31. //#define        EURO_modem_game        4
  32. //#define        EURO_demomode            5
  33. //#define        EURO_simulation        6
  34. //#define        EURO_practice            7
  35. //#define        EURO_wireplay            8
  36.  
  37. #ifndef BYTE
  38. typedef         unsigned char BYTE;
  39. #endif
  40.  
  41. #define         Max(a,b) (((a)>=(b)) ? (a):(b))
  42. #define         Min(a,b) (((a)>=(b)) ? (b):(a))
  43.  
  44.  
  45. // [ Control Type Definitions ]                         
  46.  
  47.  
  48. #define    Unusable                        0
  49. #define    Usable                        128
  50.  
  51. #define    EuroKeyboard1                 0
  52. #define    EuroKeyboard2                1
  53. #define    EuroJoystick1                2
  54. #define    EuroJoystick2                3
  55. #define    EuroMouse                    4
  56. #define    EuroLogictechPad            5
  57.  
  58. #define    NO_OF_CONTROL_METHODS    6
  59.  
  60. // [ Keyboard Input Data ]
  61.  
  62. #define     B_SPACE                        0x08
  63. #define     DELETE                        0x53
  64. #define     RETURN                        0x0D
  65. #define    L_ARROW                        0x4B     // ext
  66. #define    R_ARROW                        0x4D     // ext 
  67. #define    HOME                            0x47     // ext
  68. #define    END                            0x4f     // ext
  69.  
  70. #define    NORMAL                        0
  71. #define    DIAL                            1
  72.  
  73. #define    ENABLE_INPUT                0
  74. #define    DISABLE_INPUT                1
  75.  
  76. #define    DIAL_LENGTH                    280
  77. #define    INIT_LENGTH                 280
  78.  
  79. #define    EDIT_DIAL_NUMBER            1
  80. #define    EDIT_INIT_STRING            2
  81.  
  82. // [ Modem Data ]
  83.  
  84. #define    MAX_MODEM_TYPES            88
  85. #define    MAX_MODEM_STRINGS            34
  86.  
  87. // [ Image Data ]
  88.  
  89. #define        SMALL_FONT                GEOFONT16
  90. #define        MEDIUM_FONT                GEOFONT22
  91. #define        LARGE_FONT                GEOFONT30
  92.  
  93. // [ Text String Data ]                         
  94.  
  95. #define        ANDYF_TEXT_START            1600
  96. #define        LAURENT_TEXT_START         ANDYF_TEXT_START+100
  97. #define        TEXT_STRING_BUFFER_LEN    24576
  98.  
  99. // [ Mouse Cursor Image Offsets ]                         
  100.  
  101. #define        NoButton                    0
  102. #define        LeftButton                 1
  103. #define        RightButton                2
  104.  
  105. // [ Country Data ]                         
  106. //
  107. //#define        Bulgaria                    0
  108. //#define        Croatia                    1
  109. //#define      Czech                        2
  110. //#define        Denmark                    3
  111. //#define        England                    4
  112. //#define        France                    5
  113. //#define        Germany                    6
  114. //#define        Holland                    7
  115. //#define        Italy                        8
  116. //#define        Portugal                    9
  117. //#define        Romania                    10
  118. //#define        Russia                    11
  119. //#define        Scotland                    12
  120. //#define        Spain                        13
  121. //#define        Switzerland                14
  122. //#define        Turkey                    15
  123. //
  124. // [ Venue Offsets ]                         
  125. //
  126. //#define        London                    0        
  127. //#define        Birmingham                1
  128. //#define        Leeds                        2
  129. //#define        Newcastle                3
  130. //#define        Manchester                4
  131. //#define        Liverpool                5
  132. //#define        Sheffield                6
  133. //#define        Nottingham                7
  134. //
  135. // [ League table Offsets ]                         
  136.  
  137. #define        Wins                        0        
  138. #define        Draws                        1
  139. #define        Loses                        2
  140. #define        Points                    3
  141.  
  142. // [ Next Match Types ]                         
  143.  
  144. #define        QuarterFinal            0        
  145. #define        SemiFinal                1
  146. #define        Final                        2
  147.  
  148. // [ Result Text ]
  149.  
  150. #define        ProceedToNextRnd        0
  151. #define        ExtraTime                1
  152. #define        Penalties                2
  153.  
  154. // [ Player information Offsets ]                         
  155.  
  156. #define        Age                        0
  157. #define        Club                        1
  158. #define        Caps                        2
  159. #define        Goals                        3
  160. #define        Posn                        4
  161.  
  162. // [ Formation Field Position Offsets ]                         
  163.  
  164. #define        Gk                             0
  165. #define        Df                             1
  166. #define        Md                             2
  167. #define        Fw                             3
  168. #define        Sb                             4
  169. #define        Dr                             5
  170. #define        Bn                            6
  171. #define        In                            7
  172.  
  173. #define        Injured                    25        // this value determines when a player is no longer fit enough to play.
  174.  
  175. // [ Player Statistic Lable Offsets ]
  176.  
  177. #define        Spd                        0
  178. #define        Tackling                    1
  179. #define        Passing                    2
  180. #define        Shooting                    3
  181. #define        Skill                        4
  182. #define        Fit                        5
  183.  
  184. // [ User Tag Label Offsets ]                         
  185.  
  186. #define        P1                             0
  187. #define        P2                            1
  188. #define        P3                            2
  189. #define        P4                            3
  190. #define        P5                            4 
  191. #define        P6                            5 
  192. #define        P7                            6 
  193. #define        P8                            7 
  194. #define        P9                            8 
  195. #define        P10                        9 
  196. #define        P11                        10
  197. #define        P12                        11
  198. #define        P13                        12
  199. #define        P14                        13
  200. #define        P15                        14
  201. #define        P16                        15
  202. #define        Auto                        16
  203. #define        Dash                        17
  204.  
  205. // [ Match User Label Offset ]                         
  206.  
  207. #define        ComputerUser            16
  208.  
  209. // [ User Selection Labels ]                         
  210.  
  211. #define        Country                    0
  212. #define        Cntrl                        1
  213.  
  214. // [ Network Information Labels ]                         
  215.  
  216. #define        Netusers                    0
  217. #define        Tochoose                    1
  218. #define        Netwait                    2
  219.  
  220. // [ Wireplay Information Labels ]                         
  221.  
  222. #define        Wireusers                0
  223. #define        Wirewait                    1
  224.  
  225. // [ Spectator Label Offsets ]
  226.  
  227. #define        Watch                        0
  228. #define        Nocntrl                    1
  229.  
  230. // [ Team Information Label Offsets ]
  231.  
  232. #define        Record                    0
  233. #define        President                1
  234. #define        Coach                        2
  235. #define        Starplayr                3
  236. #define        Last10                    4
  237. #define        Teamwins                    5
  238. #define        Teamdraws                6
  239. #define        Teamloses                7
  240. #define        Teamglsfor                8
  241. #define        Teamglsagn                9
  242.                          
  243. // [ Button Text Label Offsets ]
  244.  
  245. #define        Select                    0
  246. #define        Redraw                    1
  247. #define        Done                        2
  248. #define        Default                    3
  249. #define        StartMatch                4
  250. #define        PlayerSetup                5
  251. #define        TeamSetup                6
  252. #define        NextMatch                7
  253. #define        SelectTeams                8
  254.  
  255. // [ Modem Heading Label Offsets ]
  256.  
  257. #define        Initialisation            0
  258. #define        Typeheading                1
  259. #define        Type                        2
  260. #define        Dial                        3
  261. #define        Comport                    4
  262. #define        Initstring                5
  263. #define        Phonenumber                6
  264.  
  265. // [ Camera types ]
  266.  
  267. #define        CAMwire                    0
  268. #define        CAMfar                    1
  269. #define        CAMplan                    2
  270. #define        CAMgline                    3
  271. #define        CAMiso                    4
  272. #define        CAMplyr                    5
  273. #define        CAMref                    6
  274.  
  275. // [ Match Length types ]
  276.  
  277. #define        TIME_5mins                0
  278. #define        TIME_10mins                1
  279. #define        TIME_20mins                2
  280. #define        TIME_40mins                3
  281. #define        TIME_90mins                4
  282.  
  283. // [ Screen size types ]
  284.  
  285. #define        Scrn_100                    0
  286. #define        Scrn_85                    1
  287. #define        Scrn_85w                    2
  288. #define        Scrn_75                    3
  289. #define        Scrn_75w                    4
  290. #define        Scrn_65                    5
  291. #define        Scrn_65w                    6
  292. #define        Scrn_50                    7
  293. #define        Scrn_50w                    8
  294. #define        Scrn_40w                    9
  295.  
  296. // [ Variable Statistic Bar Definitions ]
  297.  
  298. #define    Lft    0
  299. #define    Rgt    1
  300. #define    Top    0
  301. #define    Btm    1
  302.  
  303. // [ Variable Purple Filling Offsets ]
  304.  
  305. #define    Dull        0
  306. #define    Bright    1
  307.  
  308. // [ Wind types ]
  309.  
  310. #define         LowWIND                    1
  311. #define         MediumWIND                2
  312. #define         HighWIND                    3
  313.  
  314. // [ Player name Data ]                         
  315.  
  316. #define        NAME_BUFFER_LEN         128
  317. //#define        INITIAL_SURNAME        0
  318. //#define        SURNAME                    1
  319. //#define        FULL_NAME                2
  320.  
  321. // [ Menu Pages ]
  322.  
  323. #define        MAIN                        0
  324. #define        SQUAD_SELECT            2
  325. #define        GROUP_FIXTURES            3
  326. #define        TEAM_SELECT                4
  327. #define        EURO_REDRAW                5
  328. #define        PLAYER_STATS            6
  329. #define        PLAYER_SETUP            7
  330. #define        TEAM_STATS                8
  331. #define        VENUE_FLYTHRU            9
  332. #define        MODEM_SETUP                  10
  333. #define        NEXT_MATCH                  11
  334. #define        QUALIFIERS                12
  335. #define        QUARTER_FINALS            13
  336. #define        SEMI_FINALS                14
  337. #define        FINAL_MATCH                15
  338. #define        EXIT_FRONTEND              63
  339.  
  340. // [ Bounding Box Type Definitions ]                         
  341.  
  342. #define        MAX_BOUNDING_BOXES    52
  343. #define        NO_BOX                    -1
  344.  
  345. #define        TEAM_BOX                    20
  346. #define        FORMATION_infoBOX        33
  347. #define        QUESTION_BOX            34
  348. #define        FORMATION_BOX            35
  349. #define        FORMATION_stringBOX    36
  350. #define        EURO_TEAMa_BOX            1
  351. #define        EURO_TEAMb_BOX            2
  352. #define        RETURN_SQUAD_BOX        37
  353. #define        RETURN_PSTATS_BOX        35
  354. //
  355. // euro_sel.cpp
  356. //
  357. //
  358. #define        PLAYER_SETUP_BOX            3
  359. #define        FORMATION_SETUP_BOX        4
  360. #define        CHOOSE_NET_TEAMS_BOX        5
  361. #define        START_MATCH_BOX            6
  362. #define        USER_TEAM_SELECT_BOX     7
  363. #define        USER_TEAMdisp_BOX            8
  364. #define        NOofUSERS_BOX                9
  365. #define        NOofUSERSdsp_BOX            10
  366. #define        START_MATCHdisp_BOX        11
  367. #define        FORMATION_SETUPdisp_BOX    12
  368. #define        PLAYER_SETUPdisp_BOX        13
  369. #define        SELECT_TEAM_BOX            14
  370. #define        SELECT_TEAMdisp_BOX        15
  371. //
  372. // euro_usr.cpp
  373. //
  374. //                user control             0   >...24
  375. #define        TEAM_SELECT_BOX        43
  376. #define        PLYR_CNTRL_BOX            44
  377. #define        PLYR_COUNTRY_BOX        45
  378. #define        USER_SETUP_BOX            46    //>...49
  379. #define        NET_START_BOX            26
  380. #define        NET_INFO_BOX            25
  381. #define        TEAM_SELECTdisp_BOX    26
  382. #define        NET_STARTdisp_BOX        27
  383. //
  384. //    euro_mod.cpp
  385. //
  386. //
  387. #define        MODEM_SELECT_BOX        10
  388. #define        DIAL_SELECT_BOX        11
  389. #define        COM_SELECT_BOX            12
  390. #define        DIAL_NUMBER_BOX        13
  391. #define        INIT_STRING_BOX        14
  392. //
  393. //    euro_fix.cpp
  394. //
  395. //
  396. #define         REDRAW_BOX                0
  397. #define        GRP_FIX_BOX                1
  398. #define        REDRAWdisp_BOX            2
  399. #define        GRP_FIXdisp_BOX        3
  400. #define        DEFAULT_BOX                4
  401. #define        DEFAULTdisp_BOX        5
  402. #define         NXT_MTCH_BOX             6
  403. #define         NXT_MTCHdisp_BOX        7
  404. #define        EUROCUP_BOX                8
  405. //
  406. // euro_inf.cpp
  407. //
  408. #define        OPPONENT_TEAM_BOX        38
  409. #define        RETN_TSTATS_BOX        35
  410. #define        RETN_TSTATSdisp_BOX    39
  411.  
  412.  
  413. // [ General Defines ]
  414.  
  415. #define        PITCH_XPOS_BL            (28.0)            
  416. #define        PITCH_YPOS_BL            (350.0)        
  417. #define        PITCH_XPOS_TL            (93.0)            
  418. #define        PITCH_YPOS_TL            (192.0)        
  419. #define        PITCH_XPOS_BR            (28.0+414.0)    
  420. #define        PITCH_YPOS_BR            (350.0)        
  421. #define        PITCH_XPOS_TR            (376.0)        
  422. #define        PITCH_YPOS_TR            (192.0)
  423. #define        FORMATION_BAR_WIDTH    96
  424.  
  425. // [ Co-ordinate Defines ]
  426.  
  427. #define        NameBarXposn              34
  428.                                                 
  429. // [ Colour Defines ]
  430.  
  431. #define    SELECT_COLOUR                55
  432. #define    MOVE_COLOUR                    62
  433.  
  434. // [ Team Marker Defines ]
  435.  
  436. #define    TEAM_1a                        0
  437. #define    TEAM_2a                        1
  438. #define    TEAM_3a                        2
  439. #define    TEAM_4a                        3
  440. #define    TEAM_1b                        4
  441. #define    TEAM_2b                        5
  442. #define    TEAM_3b                        6
  443. #define    TEAM_4b                        7
  444. #define    TEAM_1c                        8
  445. #define    TEAM_2c                        9
  446. #define    TEAM_3c                        10
  447. #define    TEAM_4c                        11
  448. #define    TEAM_1d                        12
  449. #define    TEAM_2d                        13
  450. #define    TEAM_3d                        14
  451. #define    TEAM_4d                        15
  452.  
  453. #define    TEAM_1q                        16
  454. #define    TEAM_2q                        17
  455. #define    TEAM_3q                        18
  456. #define    TEAM_4q                        19
  457.  
  458. #define    TEAM_1s                        20
  459. #define    TEAM_2s                        21
  460.  
  461. // [ Information definitions ]
  462.  
  463. #define    never                            -1
  464. #define    y1960                            0
  465. #define    Line01                        0
  466. #define    Line02                        1
  467. #define    Line03                        2
  468. #define    Line04                        3
  469. #define    Line05                        4
  470. #define    Line06                        5
  471. #define    Line07                        6
  472. #define    Line08                        7
  473. #define    Line09                        8
  474. #define    Line10                        9
  475. #define    Line11                        10
  476. #define    Line12                        11
  477. #define    Line13                        12
  478. #define    Line14                        13
  479. #define    Line15                        14
  480. #define    Line16                        15
  481. #define    Line17                        16
  482. #define    Line18                        17 
  483. #define    Line19                        18 
  484. #define    Line20                        19 
  485. #define    Line21                        20 
  486. #define    Line22                        21
  487. #define    Line23                        22
  488. #define    Line24                        23
  489. #define    Line25                        24
  490. #define    Line26                        25
  491. #define    Line27                        26
  492. #define    Line28                        27 
  493. #define    Line29                          28 
  494. #define    Line30                          29 
  495. #define    Line31                        30 
  496. #define    Line32                        31
  497. #define    Line33                        32
  498. #define    Line34                        33
  499. #define    Line35                        34
  500. #define    Line36                        35
  501. #define    Line37                        36
  502.                                              
  503. typedef         void (*copyfunctiontype)(int copyWidth, BYTE *srce, BYTE *dest);
  504.  
  505. // Pseudo buffer info type
  506. //typedef struct
  507. //    { 
  508. //    BYTE  *pseudo_start;
  509. //    long  pseudo_width;
  510. //    long  pseudo_height;
  511. //    long    window_width;
  512. //    long    window_height;
  513. //    }
  514. //    pseudo_info;
  515. //
  516. // Texture page info type
  517. //typedef struct
  518. //    { 
  519. //    BYTE  *page_start;
  520. //    unsigned int page_width;
  521. //    unsigned int page_height;
  522. //    }
  523. //    texture_info;
  524. //
  525. // DAT offset file format type
  526. //typedef struct {
  527. //    unsigned    long    offset;
  528. //    unsigned    long    size;
  529. //    }
  530. //    offset_defn;
  531. //
  532. // Bounding Box info type
  533. //typedef struct {
  534. //    signed    short         BoundingBoxLeft;
  535. //    signed    short         BoundingBoxTop;
  536. //    signed    short         BoundingBoxRight;
  537. //    signed    short         BoundingBoxBottom;
  538. //    }
  539. //    box_info;
  540. //
  541. //#define    MAX_ANIMATIONS            8
  542. //#define    CONT_ANIM                2
  543. //#define    RUN_ONCE                    0
  544. //
  545. // Animating sprites info type
  546. //typedef struct {
  547. //    float                        StartFrame;
  548. //    float                        EndFrame;
  549. //    float                        Counter;
  550. //    float                        AnimationSpeed;
  551. //    signed     char          Bounding_box;
  552. //    unsigned char            Flags;
  553. //    int                        xposn, yposn;
  554. //    }
  555. //    animation_info;
  556. //
  557. //#define    MAX_DUMPS        128
  558. //
  559. //// Screen Dump info type
  560. //typedef struct {
  561. //    char    DumpFlag;
  562. //    short    DumpXpos;
  563. //    short    DumpYpos;
  564. //    short    DumpWidth;
  565. //    short    DumpHeight;
  566. //                   }dump_info;
  567. //
  568. //// String and coordinates for headings on tables.
  569. //typedef struct {
  570. //    int    xposn;
  571. //    int    yposn;
  572. //    short    string;
  573. //                   }header_info;
  574. //
  575. //// Coordinates for team names within group tables.
  576. //typedef struct {
  577. //    int    xposn;
  578. //    int    yposn;
  579. //                   }Coord_info;
  580. //
  581. //// Coordinates and image data for country select images.
  582. //typedef struct {
  583. //    int    image_no;
  584. //    int    xposn;
  585. //    int    yposn;
  586. //                   }TeamSel_Info;
  587. //
  588. //// League table information.
  589. //typedef struct {
  590. //    char    played;
  591. //    char    won;
  592. //    char    drew;
  593. //    char    lost;
  594. //    short    goalsFor;
  595. //    short    goalsAgainst;
  596. //    signed short goalDiff;
  597. //    char    points;
  598. //                   }League_info;
  599. //
  600. //// Euro Champioship fixture info.
  601. //typedef struct {
  602. //    char    HomeTeam;
  603. //    char    AwayTeam;
  604. //    int    fixXposn;
  605. //    int    fixYposn;
  606. //                    }fixture_info;
  607. //
  608. //// Euro Champioship scores info.
  609. //typedef struct {
  610. //    short    HomeScore;
  611. //    short    AwayScore;
  612. //                    }results_info;
  613. //
  614. //
  615. //#define    AUTOPLAYER            -1
  616. //#define    PLYR_NOT_CHOSEN    12
  617. //
  618. //// User info.
  619. //typedef struct {
  620. //    char            team;            
  621. //    signed char    player;
  622. //    char            control;
  623. //    char            TeamHAflag;
  624. //                    }user_info;
  625. //
  626. //// User championship info.
  627. //typedef struct {
  628. //    char            NoOfUsers;            
  629. //                    }euro_info;
  630. //
  631. //typedef struct {
  632. //    short            scored;
  633. //    short            conceeded;
  634. //                }result_data;
  635. //
  636. //// Past History info.
  637. //typedef struct {
  638. //    result_data    history[10];
  639. //                    }history_info;
  640. //
  641. // Slider bar info type
  642. //typedef struct
  643. //    { 
  644. //    short    windowposn;            // internal ypos value.
  645. //    short    minx;                    // top left of inner section of bar.
  646. //    short miny;                    // top left of inner    section of bar.
  647. //    short    maxx;                    // bottom right of inner section of bar.
  648. //    short maxy;                    // bottom right of inner section of bar.
  649. //    short elements;            // number of elements in list.
  650. //    short page_elements;        // number of elements displayed on screen.
  651. //    }
  652. //    slider_info;
  653. //
  654. //
  655. // Slider bar info type
  656. //typedef struct
  657. //    { 
  658. //    char    team;
  659. //    short xposn;
  660. //    short yposn;
  661. //    }
  662. //    qualify_info;
  663.  
  664.  
  665.